package com.shire.shire_interface.model.cs;

import com.shire.shire_interface.model.BasePageExample;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class WxChatExample extends BasePageExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public WxChatExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Long value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Long value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Long value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Long value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Long value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Long value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Long> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Long> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Long value1, Long value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Long value1, Long value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCmdidIsNull() {
            addCriterion("cmdId is null");
            return (Criteria) this;
        }

        public Criteria andCmdidIsNotNull() {
            addCriterion("cmdId is not null");
            return (Criteria) this;
        }

        public Criteria andCmdidEqualTo(Long value) {
            addCriterion("cmdId =", value, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidNotEqualTo(Long value) {
            addCriterion("cmdId <>", value, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidGreaterThan(Long value) {
            addCriterion("cmdId >", value, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidGreaterThanOrEqualTo(Long value) {
            addCriterion("cmdId >=", value, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidLessThan(Long value) {
            addCriterion("cmdId <", value, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidLessThanOrEqualTo(Long value) {
            addCriterion("cmdId <=", value, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidIn(List<Long> values) {
            addCriterion("cmdId in", values, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidNotIn(List<Long> values) {
            addCriterion("cmdId not in", values, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidBetween(Long value1, Long value2) {
            addCriterion("cmdId between", value1, value2, "cmdid");
            return (Criteria) this;
        }

        public Criteria andCmdidNotBetween(Long value1, Long value2) {
            addCriterion("cmdId not between", value1, value2, "cmdid");
            return (Criteria) this;
        }

        public Criteria andMsgidIsNull() {
            addCriterion("msgId is null");
            return (Criteria) this;
        }

        public Criteria andMsgidIsNotNull() {
            addCriterion("msgId is not null");
            return (Criteria) this;
        }

        public Criteria andMsgidEqualTo(String value) {
            addCriterion("msgId =", value, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidNotEqualTo(String value) {
            addCriterion("msgId <>", value, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidGreaterThan(String value) {
            addCriterion("msgId >", value, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidGreaterThanOrEqualTo(String value) {
            addCriterion("msgId >=", value, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidLessThan(String value) {
            addCriterion("msgId <", value, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidLessThanOrEqualTo(String value) {
            addCriterion("msgId <=", value, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidLike(String value) {
            addCriterion("msgId like", value, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidNotLike(String value) {
            addCriterion("msgId not like", value, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidIn(List<String> values) {
            addCriterion("msgId in", values, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidNotIn(List<String> values) {
            addCriterion("msgId not in", values, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidBetween(String value1, String value2) {
            addCriterion("msgId between", value1, value2, "msgid");
            return (Criteria) this;
        }

        public Criteria andMsgidNotBetween(String value1, String value2) {
            addCriterion("msgId not between", value1, value2, "msgid");
            return (Criteria) this;
        }

        public Criteria andLocalidIsNull() {
            addCriterion("localId is null");
            return (Criteria) this;
        }

        public Criteria andLocalidIsNotNull() {
            addCriterion("localId is not null");
            return (Criteria) this;
        }

        public Criteria andLocalidEqualTo(String value) {
            addCriterion("localId =", value, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidNotEqualTo(String value) {
            addCriterion("localId <>", value, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidGreaterThan(String value) {
            addCriterion("localId >", value, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidGreaterThanOrEqualTo(String value) {
            addCriterion("localId >=", value, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidLessThan(String value) {
            addCriterion("localId <", value, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidLessThanOrEqualTo(String value) {
            addCriterion("localId <=", value, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidLike(String value) {
            addCriterion("localId like", value, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidNotLike(String value) {
            addCriterion("localId not like", value, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidIn(List<String> values) {
            addCriterion("localId in", values, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidNotIn(List<String> values) {
            addCriterion("localId not in", values, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidBetween(String value1, String value2) {
            addCriterion("localId between", value1, value2, "localid");
            return (Criteria) this;
        }

        public Criteria andLocalidNotBetween(String value1, String value2) {
            addCriterion("localId not between", value1, value2, "localid");
            return (Criteria) this;
        }

        public Criteria andWxaccountIsNull() {
            addCriterion("wxAccount is null");
            return (Criteria) this;
        }

        public Criteria andWxaccountIsNotNull() {
            addCriterion("wxAccount is not null");
            return (Criteria) this;
        }

        public Criteria andWxaccountEqualTo(String value) {
            addCriterion("wxAccount =", value, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountNotEqualTo(String value) {
            addCriterion("wxAccount <>", value, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountGreaterThan(String value) {
            addCriterion("wxAccount >", value, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountGreaterThanOrEqualTo(String value) {
            addCriterion("wxAccount >=", value, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountLessThan(String value) {
            addCriterion("wxAccount <", value, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountLessThanOrEqualTo(String value) {
            addCriterion("wxAccount <=", value, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountLike(String value) {
            addCriterion("wxAccount like", value, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountNotLike(String value) {
            addCriterion("wxAccount not like", value, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountIn(List<String> values) {
            addCriterion("wxAccount in", values, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountNotIn(List<String> values) {
            addCriterion("wxAccount not in", values, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountBetween(String value1, String value2) {
            addCriterion("wxAccount between", value1, value2, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andWxaccountNotBetween(String value1, String value2) {
            addCriterion("wxAccount not between", value1, value2, "wxaccount");
            return (Criteria) this;
        }

        public Criteria andFriendidIsNull() {
            addCriterion("friendId is null");
            return (Criteria) this;
        }

        public Criteria andFriendidIsNotNull() {
            addCriterion("friendId is not null");
            return (Criteria) this;
        }

        public Criteria andFriendidEqualTo(Integer value) {
            addCriterion("friendId =", value, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidNotEqualTo(Integer value) {
            addCriterion("friendId <>", value, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidGreaterThan(Integer value) {
            addCriterion("friendId >", value, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidGreaterThanOrEqualTo(Integer value) {
            addCriterion("friendId >=", value, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidLessThan(Integer value) {
            addCriterion("friendId <", value, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidLessThanOrEqualTo(Integer value) {
            addCriterion("friendId <=", value, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidIn(List<Integer> values) {
            addCriterion("friendId in", values, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidNotIn(List<Integer> values) {
            addCriterion("friendId not in", values, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidBetween(Integer value1, Integer value2) {
            addCriterion("friendId between", value1, value2, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendidNotBetween(Integer value1, Integer value2) {
            addCriterion("friendId not between", value1, value2, "friendid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidIsNull() {
            addCriterion("friendWxId is null");
            return (Criteria) this;
        }

        public Criteria andFriendwxidIsNotNull() {
            addCriterion("friendWxId is not null");
            return (Criteria) this;
        }

        public Criteria andFriendwxidEqualTo(String value) {
            addCriterion("friendWxId =", value, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidNotEqualTo(String value) {
            addCriterion("friendWxId <>", value, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidGreaterThan(String value) {
            addCriterion("friendWxId >", value, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidGreaterThanOrEqualTo(String value) {
            addCriterion("friendWxId >=", value, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidLessThan(String value) {
            addCriterion("friendWxId <", value, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidLessThanOrEqualTo(String value) {
            addCriterion("friendWxId <=", value, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidLike(String value) {
            addCriterion("friendWxId like", value, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidNotLike(String value) {
            addCriterion("friendWxId not like", value, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidIn(List<String> values) {
            addCriterion("friendWxId in", values, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidNotIn(List<String> values) {
            addCriterion("friendWxId not in", values, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidBetween(String value1, String value2) {
            addCriterion("friendWxId between", value1, value2, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendwxidNotBetween(String value1, String value2) {
            addCriterion("friendWxId not between", value1, value2, "friendwxid");
            return (Criteria) this;
        }

        public Criteria andFriendremarkIsNull() {
            addCriterion("friendRemark is null");
            return (Criteria) this;
        }

        public Criteria andFriendremarkIsNotNull() {
            addCriterion("friendRemark is not null");
            return (Criteria) this;
        }

        public Criteria andFriendremarkEqualTo(String value) {
            addCriterion("friendRemark =", value, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkNotEqualTo(String value) {
            addCriterion("friendRemark <>", value, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkGreaterThan(String value) {
            addCriterion("friendRemark >", value, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkGreaterThanOrEqualTo(String value) {
            addCriterion("friendRemark >=", value, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkLessThan(String value) {
            addCriterion("friendRemark <", value, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkLessThanOrEqualTo(String value) {
            addCriterion("friendRemark <=", value, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkLike(String value) {
            addCriterion("friendRemark like", value, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkNotLike(String value) {
            addCriterion("friendRemark not like", value, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkIn(List<String> values) {
            addCriterion("friendRemark in", values, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkNotIn(List<String> values) {
            addCriterion("friendRemark not in", values, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkBetween(String value1, String value2) {
            addCriterion("friendRemark between", value1, value2, "friendremark");
            return (Criteria) this;
        }

        public Criteria andFriendremarkNotBetween(String value1, String value2) {
            addCriterion("friendRemark not between", value1, value2, "friendremark");
            return (Criteria) this;
        }

        public Criteria andChatfromIsNull() {
            addCriterion("chatFrom is null");
            return (Criteria) this;
        }

        public Criteria andChatfromIsNotNull() {
            addCriterion("chatFrom is not null");
            return (Criteria) this;
        }

        public Criteria andChatfromEqualTo(Integer value) {
            addCriterion("chatFrom =", value, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromNotEqualTo(Integer value) {
            addCriterion("chatFrom <>", value, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromGreaterThan(Integer value) {
            addCriterion("chatFrom >", value, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromGreaterThanOrEqualTo(Integer value) {
            addCriterion("chatFrom >=", value, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromLessThan(Integer value) {
            addCriterion("chatFrom <", value, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromLessThanOrEqualTo(Integer value) {
            addCriterion("chatFrom <=", value, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromIn(List<Integer> values) {
            addCriterion("chatFrom in", values, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromNotIn(List<Integer> values) {
            addCriterion("chatFrom not in", values, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromBetween(Integer value1, Integer value2) {
            addCriterion("chatFrom between", value1, value2, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andChatfromNotBetween(Integer value1, Integer value2) {
            addCriterion("chatFrom not between", value1, value2, "chatfrom");
            return (Criteria) this;
        }

        public Criteria andMsgtypeIsNull() {
            addCriterion("msgType is null");
            return (Criteria) this;
        }

        public Criteria andMsgtypeIsNotNull() {
            addCriterion("msgType is not null");
            return (Criteria) this;
        }

        public Criteria andMsgtypeEqualTo(Integer value) {
            addCriterion("msgType =", value, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeNotEqualTo(Integer value) {
            addCriterion("msgType <>", value, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeGreaterThan(Integer value) {
            addCriterion("msgType >", value, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("msgType >=", value, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeLessThan(Integer value) {
            addCriterion("msgType <", value, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeLessThanOrEqualTo(Integer value) {
            addCriterion("msgType <=", value, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeIn(List<Integer> values) {
            addCriterion("msgType in", values, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeNotIn(List<Integer> values) {
            addCriterion("msgType not in", values, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeBetween(Integer value1, Integer value2) {
            addCriterion("msgType between", value1, value2, "msgtype");
            return (Criteria) this;
        }

        public Criteria andMsgtypeNotBetween(Integer value1, Integer value2) {
            addCriterion("msgType not between", value1, value2, "msgtype");
            return (Criteria) this;
        }

        public Criteria andSendstatusIsNull() {
            addCriterion("sendStatus is null");
            return (Criteria) this;
        }

        public Criteria andSendstatusIsNotNull() {
            addCriterion("sendStatus is not null");
            return (Criteria) this;
        }

        public Criteria andSendstatusEqualTo(Integer value) {
            addCriterion("sendStatus =", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusNotEqualTo(Integer value) {
            addCriterion("sendStatus <>", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusGreaterThan(Integer value) {
            addCriterion("sendStatus >", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("sendStatus >=", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusLessThan(Integer value) {
            addCriterion("sendStatus <", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusLessThanOrEqualTo(Integer value) {
            addCriterion("sendStatus <=", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusIn(List<Integer> values) {
            addCriterion("sendStatus in", values, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusNotIn(List<Integer> values) {
            addCriterion("sendStatus not in", values, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusBetween(Integer value1, Integer value2) {
            addCriterion("sendStatus between", value1, value2, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusNotBetween(Integer value1, Integer value2) {
            addCriterion("sendStatus not between", value1, value2, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusIsNull() {
            addCriterion("readStatus is null");
            return (Criteria) this;
        }

        public Criteria andReadstatusIsNotNull() {
            addCriterion("readStatus is not null");
            return (Criteria) this;
        }

        public Criteria andReadstatusEqualTo(Integer value) {
            addCriterion("readStatus =", value, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusNotEqualTo(Integer value) {
            addCriterion("readStatus <>", value, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusGreaterThan(Integer value) {
            addCriterion("readStatus >", value, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("readStatus >=", value, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusLessThan(Integer value) {
            addCriterion("readStatus <", value, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusLessThanOrEqualTo(Integer value) {
            addCriterion("readStatus <=", value, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusIn(List<Integer> values) {
            addCriterion("readStatus in", values, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusNotIn(List<Integer> values) {
            addCriterion("readStatus not in", values, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusBetween(Integer value1, Integer value2) {
            addCriterion("readStatus between", value1, value2, "readstatus");
            return (Criteria) this;
        }

        public Criteria andReadstatusNotBetween(Integer value1, Integer value2) {
            addCriterion("readStatus not between", value1, value2, "readstatus");
            return (Criteria) this;
        }

        public Criteria andFromplatIsNull() {
            addCriterion("fromPlat is null");
            return (Criteria) this;
        }

        public Criteria andFromplatIsNotNull() {
            addCriterion("fromPlat is not null");
            return (Criteria) this;
        }

        public Criteria andFromplatEqualTo(Integer value) {
            addCriterion("fromPlat =", value, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatNotEqualTo(Integer value) {
            addCriterion("fromPlat <>", value, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatGreaterThan(Integer value) {
            addCriterion("fromPlat >", value, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatGreaterThanOrEqualTo(Integer value) {
            addCriterion("fromPlat >=", value, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatLessThan(Integer value) {
            addCriterion("fromPlat <", value, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatLessThanOrEqualTo(Integer value) {
            addCriterion("fromPlat <=", value, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatIn(List<Integer> values) {
            addCriterion("fromPlat in", values, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatNotIn(List<Integer> values) {
            addCriterion("fromPlat not in", values, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatBetween(Integer value1, Integer value2) {
            addCriterion("fromPlat between", value1, value2, "fromplat");
            return (Criteria) this;
        }

        public Criteria andFromplatNotBetween(Integer value1, Integer value2) {
            addCriterion("fromPlat not between", value1, value2, "fromplat");
            return (Criteria) this;
        }

        public Criteria andShowstatusIsNull() {
            addCriterion("showStatus is null");
            return (Criteria) this;
        }

        public Criteria andShowstatusIsNotNull() {
            addCriterion("showStatus is not null");
            return (Criteria) this;
        }

        public Criteria andShowstatusEqualTo(Integer value) {
            addCriterion("showStatus =", value, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusNotEqualTo(Integer value) {
            addCriterion("showStatus <>", value, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusGreaterThan(Integer value) {
            addCriterion("showStatus >", value, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("showStatus >=", value, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusLessThan(Integer value) {
            addCriterion("showStatus <", value, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusLessThanOrEqualTo(Integer value) {
            addCriterion("showStatus <=", value, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusIn(List<Integer> values) {
            addCriterion("showStatus in", values, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusNotIn(List<Integer> values) {
            addCriterion("showStatus not in", values, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusBetween(Integer value1, Integer value2) {
            addCriterion("showStatus between", value1, value2, "showstatus");
            return (Criteria) this;
        }

        public Criteria andShowstatusNotBetween(Integer value1, Integer value2) {
            addCriterion("showStatus not between", value1, value2, "showstatus");
            return (Criteria) this;
        }

        public Criteria andCsidIsNull() {
            addCriterion("csId is null");
            return (Criteria) this;
        }

        public Criteria andCsidIsNotNull() {
            addCriterion("csId is not null");
            return (Criteria) this;
        }

        public Criteria andCsidEqualTo(Integer value) {
            addCriterion("csId =", value, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidNotEqualTo(Integer value) {
            addCriterion("csId <>", value, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidGreaterThan(Integer value) {
            addCriterion("csId >", value, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidGreaterThanOrEqualTo(Integer value) {
            addCriterion("csId >=", value, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidLessThan(Integer value) {
            addCriterion("csId <", value, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidLessThanOrEqualTo(Integer value) {
            addCriterion("csId <=", value, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidIn(List<Integer> values) {
            addCriterion("csId in", values, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidNotIn(List<Integer> values) {
            addCriterion("csId not in", values, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidBetween(Integer value1, Integer value2) {
            addCriterion("csId between", value1, value2, "csid");
            return (Criteria) this;
        }

        public Criteria andCsidNotBetween(Integer value1, Integer value2) {
            addCriterion("csId not between", value1, value2, "csid");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("createTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("createTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("createTime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("createTime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("createTime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("createTime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("createTime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("createTime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("createTime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("createTime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("createTime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("createTime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeIsNull() {
            addCriterion("readTime is null");
            return (Criteria) this;
        }

        public Criteria andReadtimeIsNotNull() {
            addCriterion("readTime is not null");
            return (Criteria) this;
        }

        public Criteria andReadtimeEqualTo(Date value) {
            addCriterion("readTime =", value, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeNotEqualTo(Date value) {
            addCriterion("readTime <>", value, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeGreaterThan(Date value) {
            addCriterion("readTime >", value, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("readTime >=", value, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeLessThan(Date value) {
            addCriterion("readTime <", value, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeLessThanOrEqualTo(Date value) {
            addCriterion("readTime <=", value, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeIn(List<Date> values) {
            addCriterion("readTime in", values, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeNotIn(List<Date> values) {
            addCriterion("readTime not in", values, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeBetween(Date value1, Date value2) {
            addCriterion("readTime between", value1, value2, "readtime");
            return (Criteria) this;
        }

        public Criteria andReadtimeNotBetween(Date value1, Date value2) {
            addCriterion("readTime not between", value1, value2, "readtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeIsNull() {
            addCriterion("sendTime is null");
            return (Criteria) this;
        }

        public Criteria andSendtimeIsNotNull() {
            addCriterion("sendTime is not null");
            return (Criteria) this;
        }

        public Criteria andSendtimeEqualTo(Date value) {
            addCriterion("sendTime =", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeNotEqualTo(Date value) {
            addCriterion("sendTime <>", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeGreaterThan(Date value) {
            addCriterion("sendTime >", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("sendTime >=", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeLessThan(Date value) {
            addCriterion("sendTime <", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeLessThanOrEqualTo(Date value) {
            addCriterion("sendTime <=", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeIn(List<Date> values) {
            addCriterion("sendTime in", values, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeNotIn(List<Date> values) {
            addCriterion("sendTime not in", values, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeBetween(Date value1, Date value2) {
            addCriterion("sendTime between", value1, value2, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeNotBetween(Date value1, Date value2) {
            addCriterion("sendTime not between", value1, value2, "sendtime");
            return (Criteria) this;
        }

        public Criteria andPushtitleIsNull() {
            addCriterion("pushTitle is null");
            return (Criteria) this;
        }

        public Criteria andPushtitleIsNotNull() {
            addCriterion("pushTitle is not null");
            return (Criteria) this;
        }

        public Criteria andPushtitleEqualTo(String value) {
            addCriterion("pushTitle =", value, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleNotEqualTo(String value) {
            addCriterion("pushTitle <>", value, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleGreaterThan(String value) {
            addCriterion("pushTitle >", value, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleGreaterThanOrEqualTo(String value) {
            addCriterion("pushTitle >=", value, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleLessThan(String value) {
            addCriterion("pushTitle <", value, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleLessThanOrEqualTo(String value) {
            addCriterion("pushTitle <=", value, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleLike(String value) {
            addCriterion("pushTitle like", value, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleNotLike(String value) {
            addCriterion("pushTitle not like", value, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleIn(List<String> values) {
            addCriterion("pushTitle in", values, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleNotIn(List<String> values) {
            addCriterion("pushTitle not in", values, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleBetween(String value1, String value2) {
            addCriterion("pushTitle between", value1, value2, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushtitleNotBetween(String value1, String value2) {
            addCriterion("pushTitle not between", value1, value2, "pushtitle");
            return (Criteria) this;
        }

        public Criteria andPushcontentIsNull() {
            addCriterion("pushContent is null");
            return (Criteria) this;
        }

        public Criteria andPushcontentIsNotNull() {
            addCriterion("pushContent is not null");
            return (Criteria) this;
        }

        public Criteria andPushcontentEqualTo(String value) {
            addCriterion("pushContent =", value, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentNotEqualTo(String value) {
            addCriterion("pushContent <>", value, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentGreaterThan(String value) {
            addCriterion("pushContent >", value, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentGreaterThanOrEqualTo(String value) {
            addCriterion("pushContent >=", value, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentLessThan(String value) {
            addCriterion("pushContent <", value, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentLessThanOrEqualTo(String value) {
            addCriterion("pushContent <=", value, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentLike(String value) {
            addCriterion("pushContent like", value, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentNotLike(String value) {
            addCriterion("pushContent not like", value, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentIn(List<String> values) {
            addCriterion("pushContent in", values, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentNotIn(List<String> values) {
            addCriterion("pushContent not in", values, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentBetween(String value1, String value2) {
            addCriterion("pushContent between", value1, value2, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushcontentNotBetween(String value1, String value2) {
            addCriterion("pushContent not between", value1, value2, "pushcontent");
            return (Criteria) this;
        }

        public Criteria andPushprefixIsNull() {
            addCriterion("pushPrefix is null");
            return (Criteria) this;
        }

        public Criteria andPushprefixIsNotNull() {
            addCriterion("pushPrefix is not null");
            return (Criteria) this;
        }

        public Criteria andPushprefixEqualTo(String value) {
            addCriterion("pushPrefix =", value, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixNotEqualTo(String value) {
            addCriterion("pushPrefix <>", value, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixGreaterThan(String value) {
            addCriterion("pushPrefix >", value, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixGreaterThanOrEqualTo(String value) {
            addCriterion("pushPrefix >=", value, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixLessThan(String value) {
            addCriterion("pushPrefix <", value, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixLessThanOrEqualTo(String value) {
            addCriterion("pushPrefix <=", value, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixLike(String value) {
            addCriterion("pushPrefix like", value, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixNotLike(String value) {
            addCriterion("pushPrefix not like", value, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixIn(List<String> values) {
            addCriterion("pushPrefix in", values, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixNotIn(List<String> values) {
            addCriterion("pushPrefix not in", values, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixBetween(String value1, String value2) {
            addCriterion("pushPrefix between", value1, value2, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andPushprefixNotBetween(String value1, String value2) {
            addCriterion("pushPrefix not between", value1, value2, "pushprefix");
            return (Criteria) this;
        }

        public Criteria andMsgextraIsNull() {
            addCriterion("msgExtra is null");
            return (Criteria) this;
        }

        public Criteria andMsgextraIsNotNull() {
            addCriterion("msgExtra is not null");
            return (Criteria) this;
        }

        public Criteria andMsgextraEqualTo(String value) {
            addCriterion("msgExtra =", value, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraNotEqualTo(String value) {
            addCriterion("msgExtra <>", value, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraGreaterThan(String value) {
            addCriterion("msgExtra >", value, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraGreaterThanOrEqualTo(String value) {
            addCriterion("msgExtra >=", value, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraLessThan(String value) {
            addCriterion("msgExtra <", value, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraLessThanOrEqualTo(String value) {
            addCriterion("msgExtra <=", value, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraLike(String value) {
            addCriterion("msgExtra like", value, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraNotLike(String value) {
            addCriterion("msgExtra not like", value, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraIn(List<String> values) {
            addCriterion("msgExtra in", values, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraNotIn(List<String> values) {
            addCriterion("msgExtra not in", values, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraBetween(String value1, String value2) {
            addCriterion("msgExtra between", value1, value2, "msgextra");
            return (Criteria) this;
        }

        public Criteria andMsgextraNotBetween(String value1, String value2) {
            addCriterion("msgExtra not between", value1, value2, "msgextra");
            return (Criteria) this;
        }

        public Criteria andContentLike(String value) {
            addCriterion("content like", value, "content");
            return (Criteria) this;
        }


    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}